package com.wxzz.elearing.user.entity;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.wxzz.elearning.common.bean.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@TableName("docent")
public class Docent extends BaseEntity {

    @ApiModelProperty(value = "讲师照片")
    private String docentPicture;

    @ApiModelProperty(value = "讲师名字")
    private String docentName;

    @ApiModelProperty(value = "讲师账号状态 0-审核中(试讲中) 1-正常 2-封号")
    private Integer docentStatus;

    @ApiModelProperty(value = "讲师简介")
    private String introduction;

    @ApiModelProperty(value = "讲师手机号")
    private String docentPhone;

    @ApiModelProperty(value = "企业id 0-为平台讲师")
    private Long enterpriseId;

    @ApiModelProperty(value = "对应的微信账号")
    private Long wxUserId;

    @ApiModelProperty(value = "评审状态 0-未评审 1-评审中 2-通过")
    private Integer appraisalStatus;

    @ApiModelProperty(value = "试讲数量")
    private Long trialNum;

    @ApiModelProperty(value = "讲师介绍")
    private String docentDetail;

    @ApiModelProperty(value = "讲师分类id")
    private Long commonCategoryId;

    @ApiModelProperty(value = "是否为名师讲堂讲师 0-否 1-是")
    private Integer isFamous;

    @TableField(exist = false)
    @ApiModelProperty(value = "直播总时长(h)")
    private double platformLivetelecastTime = 0;

    @TableField(exist = false)
    @ApiModelProperty(value = "直播数量")
    private double platformLivetelecastNum = 0;

    @TableField(exist = false)
    @ApiModelProperty(value = "身份名称")
    private String identityName;

    @TableField(exist = false)
    @ApiModelProperty(value = "部门名称")
    private String organizationName;

    @TableField(exist = false)
    @ApiModelProperty(value = "上一级部门名称")
    private String lastOrganizationName;

    @TableField(exist = false)
    @ApiModelProperty(value = "账号")
    private String username;

    @TableField(exist = false)
    @ApiModelProperty(value = "密码")
    private String password;

    @TableField(exist = false)
    @ApiModelProperty(value = "总讲数")
    private Integer allCurriculumNum;

    @TableField(exist = false)
    @ApiModelProperty(value = "学习人数")
    private Integer curriculumStudyNum;

    @TableField(exist = false)
    @ApiModelProperty(value = "企业名称")
    private String enterpriseName;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "试讲更新时间")
    private LocalDateTime trialUpdateTime;

    @TableField(exist = false)
    @ApiModelProperty(value = "用户余额")
    private BigDecimal userBalance = new BigDecimal("0.00");

    @TableField(exist = false)
    @ApiModelProperty(value = "累计资产")
    private BigDecimal accumulate = new BigDecimal("0.00");
}
